package ve.usb.ddp.hibernate;

import ve.usb.cohesion.runtime.LocalDate;

public class PaiPermisoRemunerado implements java.io.Serializable, ve.usb.cohesion.runtime.Auditable {

    /** Creates a new instance of PaiPermisoRemunerado */
    public PaiPermisoRemunerado() {}
    
    /**
     * Holds value of property id.
     */
    private Long id;

    /**
     * Getter for property id.
     * @return Value of property id.
     */
    public Long getId() {
        return this.id;
    }

    /**
     * Holds value of property idPaiPermisoRemunerado.
     */
    private long idPaiPermisoRemunerado;

    /**
     * Getter for property idPaiPermisoRemunerado.
     * @return Value of property idPaiPermisoRemunerado.
     */
    public long getIdPaiPermisoRemunerado() {
        return this.idPaiPermisoRemunerado;
    }

    /**
     * Setter for property idPaiPermisoRemunerado.
     * @param idPaiPermisoRemunerado New value of property idPaiPermisoRemunerado.
     */
    public void setIdPaiPermisoRemunerado(long idPaiPermisoRemunerado) {
        this.id = this.idPaiPermisoRemunerado = idPaiPermisoRemunerado;
    }

    /**
     * Holds value of property fechaInicio.
     */
    private java.util.Date fechaInicio;

    /**
     * Getter for property fechaInicio.
     * @return Value of property fechaInicio.
     */
    public java.util.Date getFechaInicio() {
        return this.fechaInicio;
    }

    /**
     * Setter for property fechaInicio.
     * @param fechaInicio New value of property fechaInicio.
     */
    public void setFechaInicio(java.util.Date fechaInicio) {
        if (fechaInicio==null || fechaInicio instanceof LocalDate)
            this.fechaInicio = fechaInicio;
        else this.fechaInicio = new LocalDate(fechaInicio);
    }

    /**
     * Holds value of property fechaFin.
     */
    private java.util.Date fechaFin;

    /**
     * Getter for property fechaFin.
     * @return Value of property fechaFin.
     */
    public java.util.Date getFechaFin() {
        return this.fechaFin;
    }

    /**
     * Setter for property fechaFin.
     * @param fechaFin New value of property fechaFin.
     */
    public void setFechaFin(java.util.Date fechaFin) {
        if (fechaFin==null || fechaFin instanceof LocalDate)
            this.fechaFin = fechaFin;
        else this.fechaFin = new LocalDate(fechaFin);
    }

    /**
     * Holds value of property descripcion.
     */
    private String descripcion = "";

    /**
     * Getter for property descripcion.
     * @return Value of property descripcion.
     */
    public String getDescripcion() {
        return this.descripcion;
    }

    /**
     * Setter for property descripcion.
     * @param descripcion New value of property descripcion.
     */
    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }

    /**
     * Holds value of property resolucion.
     */
    private PaiResolucion resolucion;

    /**
     * Getter for property resolucion.
     * @return Value of property resolucion.
     */
    public PaiResolucion getResolucion() {
        return this.resolucion;
    }

    /**
     * Setter for property resolucion.
     * @param resolucion New value of property resolucion.
     */
    public void setResolucion(PaiResolucion resolucion) {
        this.resolucion = resolucion;
    }



    public String toString() {
        return "<PaiPermisoRemunerado id='C" + this.id +
      //idPaiPermisoRemunerado
      "\" fechaInicio =\"" + fechaInicio +
      "\" fechaFin =\"" + fechaFin +
      "\" descripcion =\"" + descripcion +
        ((resolucion==null) ? "" : "\" resolucion =\"C" + resolucion.getId()) +


        "'/>";
    }

}